package com.linsen.core.rule.service;

import com.linsen.core.rule.model.Deny;

import java.util.Set;

/**
 * 规则缓存业务
 * @author zhaoyong
 * @date 2023/3/13
 */
public interface IRuleCacheService {
    /**
     * 根据IP获取黑名单
     *
     * @param ip 　ip
     * @return Set
     */
    Set<Object> getDenys(String ip);

    /**
     * 查询所有黑名单
     *
     * @return Set
     */
    Set<Object> getDenys();

    /**
     * 设置黑名单
     *
     * @param deny 黑名单对象
     */
    void setDeny(Deny deny);

    /**
     * 删除黑名单
     *
     * @param deny 黑名单对象
     */
    void deleteDeny(Deny deny);
}
